package com.elitesland.org.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;

@Data
@Accessors(chain = true)
@ApiModel(value = "地址簿", description = "地址簿")
public class OrgAddressBookVO implements Serializable {

    private static final long serialVersionUID = -2611711116400386765L;

    @ApiModelProperty("地址簿记录ID")
    @JsonSerialize(using = ToStringSerializer.class)
    Long id;

    @ApiModelProperty("业务数据记录ID")
    @JsonSerialize(using = ToStringSerializer.class)
    Long recordId;

    @ApiModelProperty("是否主记录，代表默认")
    Boolean isPrimary;

    @ApiModelProperty(value = "地址簿类型:[UDC]ORG:ADDR_TYPE")
    String addressType;

    @ApiModelProperty(value = "国家")
    String country;

    @ApiModelProperty(value = "省份")
    String province;

    @ApiModelProperty(value = "城市")
    String city;

    @ApiModelProperty(value = "区县")
    String county;

    @ApiModelProperty(value = "街道")
    String community;

    @ApiModelProperty(value = "详细地址")
    String addressLine;

    @ApiModelProperty(value = "邮政编码")
    String postalCode;

    @ApiModelProperty(value = "联系人")
    String contact;

    @ApiModelProperty(value = "手机号码")
    String mobile;

    @ApiModelProperty(value = "联系关系:[UDC]ORG:ADDRLNKT")
    String linkType;

    @ApiModelProperty(value = "开户行")
    String bankName;

    @ApiModelProperty(value = "银行账号")
    String bankAccount;
}